In communication systems such as a wireless LAN (Local Area Network) and PLC (Power Line Communication), when a transmitter device transmits data to a receiver device, an error occurs in the data received by the receiver device at a rate depending on the status of a channel. There are countermeasures against such an error that could occur in data upon transmission/reception of the data. One example of such countermeasures is a retransmission control method. According to this method, the receiver device checks whether the data it has received contains an error, and if the data contains an error, the data is retransmitted from the transmitter device. This way, error-free data will eventually be transmitted from the transmitter device to the receiver device.
This retransmission control method is described blow by taking an example of communication conforming to the communication standard IEEE (the Institute of Electrical and Electronics Engineers) 802.11n. FIG. 25 shows a PHY frame structure according to IEEE 802.11n. In a PHY frame shown in FIG. 25, a preamble signal composed of the following items is appended to the front of data to be transmitted (i.e., data carried by a DATA field in FIG. 25): an 8-μs L-STS (Legacy-Short Training Symbol); an 8-μs L-LTS (Legacy-Long Training Symbol); a 4-μs SIG (SIGnal field); an 8-μs H-SIG (High throughput-SIGnal field); a 4-μs HSTF (High throughput Short Training Field); and a 4-μs HLTF (High throughput Long Training Field) 1.
A preamble signal is used by the receiver device to perform time and frequency synchronization, AGC (Automatic Gain Control), and channel estimation. As a preamble signal contains information that is required to demodulate the DATA field, such as the length of data to be transmitted and the modulation/coding method for the data, the preamble signal is always appended at the front of a PHY frame. Furthermore, an error detection code called a CRC (Cyclic Redundancy Check) code is affixed to the data to be transmitted via the DATA field.
After the receiver device receives a PHY frame and performs predetermined signal processing, it transfers the received data to a MAC layer processing unit that performs predetermined processing in a MAC layer. The processing performed in the MAC layer includes an error detection using the CRC code appended to the received data. If the received data is judged as error-free as a result of the error detection, then the receiver device transmits, to the transmitter device, an acknowledgement response (ACK: ACKnowledge) indicating an error-free data reception. On the other hand, if the received data is judged as containing an error as a result of the error detection, then the receiver device does not transmit the ACK. When the transmitter device has not received the ACK corresponding to the PHY frame for a predetermined time period since the completion of transmission of the PHY frame, it judges that the data has not been properly received by the receiver device and accordingly retransmits the same data. Through the above procedures, the transmitter device repeatedly transmits the same data until the receiver device receives the data with no error. As a result, reliability of data transfer from the transmitter device to the receiver device can be improved.
Note that the retransmission control can also be achieved when the receiver device is configured to transmit a retransmission request, which is a signal for requesting retransmission of a data frame upon detection of an error, to the transmitter device. In this case, the transmitter device retransmits the data frame specified by the retransmission request upon receiving the retransmission request.
However, when a PHY frame is long, i.e., when the data size of a DATA field is large, the above-described error detection and retransmission control that are performed on a per-PHY frame basis are problematic as they cause reduction in the throughput. This is because the transmitter device would need to retransmit the long PHY frame in its entirety even when only part of the data received by the receiver device contains an error due to a local fluctuation of a wireless communication channel. Moreover, the longer a PHY frame is, the longer it takes to perform a single retransmission. Given this fact, when there are a plurality of terminals operating as transmitter devices or receiver devices, the throughput of the entire system is reduced.
As one method to solve this problem, a subblock retransmission method has been studied. The subblock retransmission method divides a DATA field into small blocks and performs the retransmission control on a per-subblock basis. The subblock retransmission method works as follows. When the receiver device receives a PHY frame, it performs an error detection on a per-subblock basis and requests the transmitter device to retransmit only the subblock(s) that contains an error. Upon receiving the retransmission request, the transmitter device configures a new PHY frame by appending a preamble to the specified subblock(s), and transmits the new PHY frame. This method only requires retransmission of the subblock(s) containing an error, instead of the entire PHY frame. Consequently, the throughput reduction caused by the retransmission can be alleviated to a great extent. This method also enables retransmission of data over a short period of time due to the small size of the data, thus preventing reduction in the throughput of the entire system.
Patent Literature 1 describes a decoding method utilizing the maximum a posteriori probability decoding. According to this decoding method, when decoding transmission words that include known bits holding known values, a decoded word candidate in which a known value in a part of a transmission word has been changed to another value is excluded from the decoded word candidates. In Patent Literature 1, a synchronization byte of an MPEG-2TS packet is used as a known bit by way of example.